package com.bupt.service.common;

import com.bupt.dto.sys.UserDto;
import com.bupt.exception.BaseException;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * word 和 excel  的处理逻辑
 */
public interface WordAndExcelExportService {

    // 导出 节点的模版 excel
    Object downLoadNodeMould(HttpServletRequest request,
                             HttpServletResponse response) throws BaseException;

    // 上传节点的信息
    Object upLoadNodeFileToProject(UserDto userDto,HttpServletRequest request, String projectId, MultipartFile file) throws BaseException;


    // 下载fiber链路的模板的操作
    Object downLoadFiberLinkMould( HttpServletRequest request,
                                  HttpServletResponse response) throws BaseException;

    // 下载wdm链路的模板的操作
    Object downLoadWdmLinkMould( HttpServletRequest request,
                                HttpServletResponse response) throws BaseException;

    // 下载otn链路的模板的操作
    Object downLoadOtnLinkMould(HttpServletRequest request,
                                HttpServletResponse response) throws BaseException;

    // 下载sdh链路的模板的操作
    Object downLoadSdhLinkMould(HttpServletRequest request,
                                HttpServletResponse response) throws BaseException;

    // 下载Satellite链路的模板的操作
 /*  Object downLoadSatelliteLinkMould(LoginUserDto loginUserDto, HttpServletRequest request,
                                      HttpServletResponse response) throws BaseException;
*/
    // 下载Shortwave链路的模板的操作
  /* Object downLoadShortwaveLinkMould(LoginUserDto loginUserDto, HttpServletRequest request,
                                      HttpServletResponse response) throws BaseException;*/

    // 上传 fiber  链路的基本信息
    Object upLoadFiberLinkFileToProject(UserDto userDto, String pId ,MultipartFile file) throws BaseException;

    // 上传 wdm  链路的基本信息
    Object upLoadWdmLinkFileToProject(UserDto userDto, MultipartFile file, String pId) throws BaseException;

    // 上传 otn  链路的基本信息
   Object upLoadOtnLinkFileToProject(UserDto userDto, MultipartFile file, String pId) throws BaseException;

    // 上传 sdh  链路的基本信息
    Object upLoadSdhLinkFileToProject(UserDto userDto, MultipartFile file, String pId) throws BaseException;

    //下载业务模板
    Object downLoadDemandMould(UserDto userDto, HttpServletRequest request, HttpServletResponse response)throws BaseException;

    //上传业务数据
     Object upLoadDemandToProject(UserDto userDto, String pId, MultipartFile file) throws BaseException;

    // 上传 satellite  链路的基本信息
   // Object upLoadSatelliteLinkFile(LoginUserDto loginUserDto, MultipartFile file, String pId) throws BaseException;

    // 上传 Shortwave  链路的基本信息
   // Object upLoadShortwaveLinkFile( MultipartFile file, String pId) throws BaseException;


    // 下载fiber的数据
    Object downloadFiberDataFromProject( UserDto userDto,HttpServletRequest request,
                                        HttpServletResponse response, String pId) throws BaseException;

    // 下载wdm的数据
    Object downloadWdmDataFromProject( HttpServletRequest request,
                                      HttpServletResponse response, String pId) throws BaseException;

    // 下载otn的数据
    Object downloadOtnDataFromProject(HttpServletRequest request,
                                      HttpServletResponse response, String pId) throws BaseException;

    // 下载sdh的数据
    Object downloadSdhDataFromProject(HttpServletRequest request,
                                      HttpServletResponse response, String pId) throws BaseException;

    //下载业务数据
    Object downLoadNeedServices(UserDto userDto, HttpServletRequest request, HttpServletResponse response, String pId) throws BaseException;

    //下载节点数据
    Object downloadNode(UserDto userDto, HttpServletRequest request, HttpServletResponse response, String pId) throws BaseException;

    Object downLoadPlanResult(UserDto userDto, HttpServletRequest request, HttpServletResponse response, String pId) throws BaseException;

   /* // 下载短波的数据
    Object downloadSatelliteDataFromProject( HttpServletRequest request,
                                            HttpServletResponse response, String pId) throws BaseException;

    // 下载Shortwave的数据
    Object downloadShortwaveDataFromProject(HttpServletRequest request,
                                            HttpServletResponse response, String pId) throws BaseException;*/


}
